Photosensitive semiconductor devices such as photodiodes or charge-coupled devices (CCDs) are widely used to convert images of visible light into electronic signals. These devices divide an image into a large number of discrete cells or pixels that are arranged in a number of rows (lines). Each pixel converts incident light into a packet of electrons. The number of electrons in the packet represents the intensity level of the incident light on the pixel. The electron packets are transferred to an output port in a line-by-line format. The electron packets for each line are dumped, pixel-by-pixel, onto an output diode, thereby forming an output signal that has a number of pixel periods.
The voltage across the diode is related to the intensity level of incident light on the pixel. Each pixel also has a corresponding black level. The black level for each pixel corresponds to the voltage that is present across the output diode when no light is incident on the pixel. The black level varies over operating temperature as well as between different lots of pixels.
In order to capture an image, the intensity level of the incident light on the pixel is captured and quantized into a digital code. A conventional image processor quantizes a first digital code corresponding to the black level, and a second digital code corresponding to the illuminated image. The difference between the two quantized codes corresponds to the intensity level of the image.